The present invention relates to a method, system and program for constructing a database.
In applications such as operation management software, multi-media management software and business accounting software, a database management system (DBMS) is sometimes used to manage data used in the applications.
In order to operate such an application on the DBMS, it is necessary to construct a database previously. In the construction of the database, preparation of a database area, assignment of a memory area for the DBMS, setting of parameters for the DBMS and the like are made. The application is a program which operates using the DBMS. The application contains middleware used by some programs.
The DBMS used in such an application constructs the database in accordance with definition information (database configuration information) concerning the setting and the configuration of the database required in the application. In a conventional construction method of the database shown in FIG. 15, a DBMS receives database configuration information in response to a database construction request from an application and constructs a database in accordance with the database configuration information to transmit the result thereof to the application. The database configuration information is prepared in accordance with the requirements of the application by a developer, a manager or the like of the application.
Such a prior art is disclosed in U.S. Pat. Nos. 5,758,345 and 6,487,547. U.S. Pat. No. 5,758,345 discloses a method that a DBMS prepares a database area in accordance with the definition information describing the configuration of the database. U.S. Pat. No. 6,487,547 discloses a method that a DBMS performs setting of execution environment and parameters of a database on the basis of externally inputted information.
When the application is offered as a suite product composed of a plurality of applications, it is sometimes desired to install a plurality of applications in one machine (computer such as a personal computer (PC) and a server) to be used. In the prior art, when a plurality of applications are installed in one machine, separate DBMS resources (execution environment and configuration used by the DBMS, for example, parameters to be set and memory area of the DBMS) are acquired for each application to construct the database.
In this method, since a plurality of applications are installed in one machine, a plurality of DBMS resources exist. The existence of the plurality of DBMS resources in one machine means that memory areas such as text areas and static data areas used by processes of the DBMS corresponding to the applications exist in the duplicate manner. Accordingly, there is a problem that the whole amount of DBMS resources is increased in the machine as compared with the case of only one DBMS resource.
In order to solve the above problem, there is a method that database configuration information optimum to a plurality of applications to be installed in a machine is previously prepared and is used to construct a database to thereby share one DBMS resource with the plurality of applications.
For example, it is supposed that there are three applications A, B and C which can share one DBMS resource to be operated. Database configuration information which is optimum to the applications A, B and C is previously prepared and one DBMS is shared with the three applications to construct the database to thereby make it to possible to prevent excessive resources or loads from being imposed on the machine.
Even in this method, however, the following problem occurs.
It is supposed that database configuration information which is optimum to only the applications A and B is prepared in the system using the applications A and B and one DBMS resource is shared with two applications. When the application C is added later to be used in the system, there is a problem that the DBMS used by the applications A and B is not optimum to the application C and accordingly the application C cannot share the DBMS resource.
Further, there is also a method that database configuration information which is optimum to all applications which can operate while sharing one DBMS resource is previously prepared to thereby construct a database. In this case, the DBMS resource can be shared with all the applications regardless of combination of first installed applications and later added applications.
Even in this case, however, the application C is not used in the system using only the applications A and B, although the DBMS is always required to acquire resources such as a memory area and a disk area for the application C and accordingly resources of the machine are used excessively.